//////////////////////////////////////////////
// Exportable.h
//
//////////////////////////////////////////////

/// Defines / Macros -------------------------

#pragma once

/// Forward decl -----------------------------

namespace nkExport
{
	class Node ;
}

/// Includes ---------------------------------

// nkExport
#include "../Dll/DllDefines.h"

/// Class ------------------------------------

namespace nkExport
{
	class DLL_EXPORT_EXPORT Exportable
	{
		public :

			// Constructor, destructor
			Exportable () noexcept ;
			virtual ~Exportable () ;

			// Implementation
			virtual void exportClassToTree (Node* rootNode) = 0 ;
			virtual void importClassFromTree (Node* rootNode) = 0 ;
	} ;
}